package main

import (
	"server/global"
	"server/global/mqtt/online_mqtt"
	"server/initialize"
	"sync"
)

func main() {

	// 配置文件
	global.VP = initialize.Viper()
	// 日志
	global.LOG = initialize.Zap()
	// 数据库
	global.DB = initialize.Gorm()
	// initialize.MysqlTables(global.DB)
	// 程序结束前关闭数据库连接
	DB, _ := global.DB.DB()
	defer DB.Close()

	// 同步执行mqtt
	// lock_client := lock_mqtt.Client{}
	// go lock_client.Run()
	// wg.Add(1)
	var wg sync.WaitGroup
	online_client := online_mqtt.Client{}
	go online_client.Run()
	wg.Add(1)
	// auto_client := auto_mqtt.Client{}
	// go auto_client.Run()
	// wg.Add(1)

	initialize.ListenAndServe()
}
